Previous Book Contents Book Index Next

Inside Macintosh: QuickDraw GX Objects /
Chapter 7 - View-Related Objects


Summary of View-Related Objects

Constants and Data Types

The View Port Object

typedef struct gxPrivateViewPortRecord *gxViewPort;

The Halftone Structure

struct gxHalftone{
   Fixed          angle;
   Fixed          frequency;  
   gxDotType      method;     
   gxTintType     tinting;    
   gxColor        dotColor;   
   gxColor        backgroundColor;
   gxColorSpace   tintSpace;  
};

Dot Types

enum gxDotTypes{
   gxRoundDot = 1,
   gxSpiralDot,
   gxSquareDot,
   gxLineDot,
   gxEllipticDot,
   gxTriangleDot,
   gxDispersedDot
};

typedef long gxDotType;

Tint Types

enum gxTintTypes{
   gxNoTint,      
   gxLuminanceTint,  
   gxAverageTint, 
   gxMixtureTint,    
   gxComponent1Tint,
   gxComponent2Tint,
   gxComponent3Tint,
   gxComponent4Tint
};

typedef long gxTintType;

View Port Attributes

enum gxPortAttributes {
   gxGrayPort           = 0x0001,   /* convert to gray space */
   gxAlwaysGridPort     = 0x0002,   /* use gxDeviceGridStyle */
   gxEnableMatchPort    = 0x0004    /* perform color matching */
};

typedef long gxPortAttribute;

The View Device Object

typedef struct gxPrivateViewDeviceRecord *gxViewDevice;

View Device Attributes

enum gxDeviceAttributes{
   gxDirectDevice    = 0x01,  /* pixel image must be accessible */
   gxRemoteDevice    = 0x02,  /* pixel image may be on card */
   gxInactiveDevice  = 0x04   /* device is inactive */
};

  typedef long gxDeviceAttribute;

The View Group Object

typedef struct gxPrivateViewGroupRecord *gxViewGroup;

View Group Types

   #define gxAllViewDevices            ((gxViewGroup) 0)
   #define gxScreenViewDevices         ((gxViewGroup) 1)

View Port Functions

Creating and Manipulating View Port Objects

gxViewPort GXNewViewPort	(gxViewGroup group);
void GXDisposeViewPort		(gxViewPort target);
gxViewPort GXCopyToViewPort	(gxViewPort target, gxViewPort source);
boolean GXEqualViewPort		(gxViewPort one, gxViewPort two);

Manipulating View Port Object Properties

gxShape GXGetViewPortClip	(gxViewPort source);
void GXSetViewPortClip		(gxViewPort target, gxShape clip);
gxMapping *GXGetViewPortMapping
				(gxViewPort source, gxMapping *map);
void GXSetViewPortMapping	(gxViewPort target, const gxMapping *map);
gxMapping *GXGetViewPortGlobalMapping
				(gxViewPort source, gxMapping *map);
long GXGetViewPortDither	(gxViewPort source);
void GXSetViewPortDither	(gxViewPort target, long level);
boolean GXGetViewPortHalftone
				(gxViewPort source, gxHalftone *data);
void GXSetViewPortHalftone	(gxViewPort target, const gxHalftone *data);
Fixed GXGetHalftoneDeviceAngle
				(gxViewDevice source, const gxHalftone *data);
gxViewPort GXGetViewPortParent
				(gxViewPort source);
void GXSetViewPortParent	(gxViewPort target, gxViewPort parent);
long GXGetViewPortChildren	(gxViewPort source, gxViewPort list[]);
void GXSetViewPortChildren	(gxViewPort target, long count, 
				const gxViewPort list[]);
gxViewGroup GXGetViewPortViewGroup
				(gxViewPort source);
void GXSetViewPortViewGroup	(gxViewPort target, gxViewGroup group);
gxPortAttribute GXGetViewPortAttributes
				(gxViewPort source);
void GXSetViewPortAttributes	(gxViewPort target, 
				gxPortAttribute attributes);
long GXGetViewPortTags		(gxViewPort source, long tagType, long index, 
				long count, gxTag items[]);
void GXSetViewPortTags		(gxViewPort target, long tagType, long index, 
				long oldCount, long newCount, 
				const gxTag items[]);

Retrieving the View Devices That Intersect a View Port

long GXGetViewPortViewDevices	(gxViewPort source, gxViewDevice list[]);

Retrieving the View Ports That Intersect a Shape

long GXGetShapeGlobalViewPorts
				(gxShape source, gxViewPort list[]);

Measuring a Shape in Local Coordinates

gxRectangle *GXGetShapeLocalBounds
				(gxShape source, gxRectangle *bounds);

View Device Functions

Creating and Manipulating View Device Objects

gxViewDevice GXNewViewDevice	(gxViewGroup group, gxShape bitmapShape);
void GXDisposeViewDevice		(gxViewDevice target);
gxViewDevice GXCopyToViewDevice
				(gxViewDevice target, gxViewDevice source);
boolean GXEqualViewDevice		(gxViewDevice one, gxViewDevice two);

Manipulating View Device Object Properties

gxShape GXGetViewDeviceClip		(gxViewDevice source);
void GXSetViewDeviceClip		(gxViewDevice target, gxShape clip);
gxMapping *GXGetViewDeviceMapping
				(gxViewDevice source, gxMapping *map);
void GXSetViewDeviceMapping		(gxViewDevice target, const gxMapping *map);
gxShape GXGetViewDeviceBitmap
				(gxViewDevice source);
void GXSetViewDeviceBitmap		(gxViewDevice target, gxShape bitmapShape);
gxViewGroup GXGetViewDeviceViewGroup
				(gxViewDevice source);
void GXSetViewDeviceViewGroup
				(gxViewDevice target, gxViewGroup group);
gxDeviceAttribute GXGetViewDeviceAttributes
				(gxViewDevice source);
void GXSetViewDeviceAttributes
				(gxViewDevice target, gxDeviceAttribute attributes);
long GXGetViewDeviceTags		(gxViewDevice source, long tagType, long index, 
				long count, gxTag items[]);
void GXSetViewDeviceTags		(gxViewDevice target, long tagType, long index, 
				long oldCount, long newCount, 
				const gxTag items[]);

Retrieving the View Devices That Intersect a Shape

long GXGetShapeGlobalViewDevices
				(gxShape source, gxViewPort port, 
				gxViewDevice list[]);

Measuring a Shape in Device Coordinates

boolean GXGetShapeDeviceBounds
				(gxShape source, gxViewPort port, 
				gxViewDevice device, gxRectangle *bounds);
long GXGetShapeDeviceArea	(gxShape source, gxViewPort port, 
				gxViewDevice device);

Measuring the Colors and Pattern Width of a Shape on a Device

gxColorSet GXGetShapeDeviceColors
				(gxShape source, gxViewPort port, 
				gxViewDevice device, long *width);

Hit-Testing a Shape on a Device

gxShape GXHitTestDevice		(gxShape target, gxViewPort port, 
gxViewDevice device, const gxPoint *test, 
				const gxPoint *tolerance);

View Group Functions

Creating and Disposing of View Group Objects

gxViewGroup GXNewViewGroup	(void);
void GXDisposeViewGroup		(gxViewGroup target);

Getting the View Ports and View Devices of a View Group

long GXGetViewGroupViewPorts	(gxViewGroup source, gxViewPort list[]);
long GXGetViewGroupViewDevices
				(gxViewGroup source, gxViewDevice list[]);

Measuring a Shape in Global Space

boolean GXGetShapeGlobalBounds
				(gxShape source, gxViewPort port, 
				gxViewGroup group, gxRectangle *bounds);


Previous Book Contents Book Index Next

© Apple Computer, Inc.
7 JUL 1996